### PinScratch

Простая консольная утилита, умеющая скачивать фото из альбомов ВКонтакте. Проект для .NET Framework 4.7.2. Использует библиотеку [VkNet](https://vknet.github.io/vk/).

Параметры командной строки:

* **-app идентификатор** -- идентификатор приложения. Как правило, задавать этот параметр не нужно, т. к. нормально работает значение по умолчанию из `.config`.

* **-user идентификатор** -- идентификатор пользователя, от имени которого мы входим во ВКонтакте.

* **-password пароль** -- пароль для входа во ВКонтакте.

* **-token токен** -- токен доступа к API ВКонтакте. Как правило, задавать этот параметр не нужно, т. к. нормально работает значение по умолчанию из `.config`.

* **-owner идентификатор** -- индентификатор пользователя или сообщества, чей альбом мы хотим скачать (целое число). Для сообществ -- отрицательное число.

* **-album идентификатор** -- идентификатор альбома (целое число). Кроме целых чисел принимаются также специальные идентификаторы альбомов: `wall` (фото на стене), `profile` (фото в профиле), `saved` (сохраненные фото).

* **-offset смещение** -- номер (нумерация с 0) фото, с которого нужно начать. По умолчанию скачивание начинается с начала альбома.

* **-portion порция** -- размер порции данных о фото, получаемых от ВКонтакте. По умолчанию 500 штук, это вполне разумное число. Больше 5 тыс. за раз, по-моему, ВКонтакте не отдаёт, смиритесь.

* **-parallel параллелизм** -- количество одновременных потоков скачивания. Не стоит слишком увлекаться. :)

* **-output директория** -- директория для сохранения фото. По умолчанию -- текущая директория. Фото сохраняются в подпапки по тысяче штук.

Для всех вышеперечисленных параметров предусмотрены значения по умолчанию, хранящиеся в файле `PinScratch.exe.config`. Если установить их там, то в командной строке их можно не указывать.

Кроме именованных, принимаются также позиционные параметры:

1. **идентификатор пользователя или сообщества** (аналогично `-owner`).

2. **идентификатор альбома** (аналогично `-album`).

3. **директория для сохранения** (аналогично `-output`).

Пример вызова утилиты:

```
PinScratch.exe -50442595 177301037 D:\Albums\704
```